package com.htl.exampro.course.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.htl.exampro.base.model.PageResult;
import com.htl.exampro.course.pojo.domain.CourseDO;
import com.htl.exampro.course.pojo.query.CoursePageParam;
import com.htl.exampro.course.pojo.vo.ChapterVO;
import com.htl.exampro.course.pojo.vo.CourseVO;

import java.util.List;

/**
 * 课程服务接口
 */
public interface CourseService extends IService<CourseDO> {
    /**
     * 分页查询课程列表
     */
    PageResult<CourseVO> getCoursePage(CoursePageParam pageParam);

    /**
     * 添加课程
     */
    void addCourse(CourseVO course);

    /**
     * 获取课程详情
     */
    CourseVO getChapter(String id);

    /**
     * 更新课程
     */
    void updateCourse(CourseVO course);

    /**
     * 删除课程
     */
    void deleteCourse(String id);

    /**
     * 获取课程章节列表
     */
    List<ChapterVO> getCourseChapters(String courseId);

    /**
     * 添加课程章节
     */
    void addCourseChapter(ChapterVO chapter);

    /**
     * 更新课程章节
     */
    void updateCourseChapter(ChapterVO chapter);

    /**
     * 删除课程章节
     */
    void deleteCourseChapter(String id);
} 